<?php
// +----------------------------------------------------------------------
// | INPHP
// | Copyright (c) 2023 https://inphp.cc All rights reserved.
// | Licensed ( https://opensource.org/licenses/MIT )
// | Author: 幺月儿(https://gitee.com/lulanyin) Email: inphp@qq.com
// +----------------------------------------------------------------------
// | 服务配置
// +----------------------------------------------------------------------
return [
    //建议使用默认值 1
    'sockType' => 1,
    //建议使用默认值 2
    'mode'      => 2,
    //绑定IP(仅在swoole server有效)
    'ip'        => '0.0.0.0',
    //绑定端口(仅在swoole server有效)
    'port'      => 1990,
    //http服务配置
    'http'  => [
        //PID文件保存位置，文件夹必须存在
        'pid_file'              => RUNTIME.'/service.pid',
        //worker 数量，一般按CPU核心数量 * 2
        'worker_num'            => 6,
        //最大请求数量，按需，不可超过系统设置
        'max_request'           => 128,
        //最大连接数量，按需，不可超过系统配置
        'max_connection'        => 256,
        //日志文件，文件夹必须存在
        'log_file'              => RUNTIME.'/service.txt',
        //默认异步进程数量
        'task_worker_num'       => 4,
        //开启 Task 协程支持
        'task_enable_coroutine' => true,
        //数据包大小，不建议过大，否则将占用非常大的内存，默认使用2MB = 2*1024*1024，最大内存占用 = 最大连接数量 * 大小限制
        'package_max_length'    => 10 * 1024 * 1024,
        //打开数据包长检测
        'open_length_check'     => true,
        //文件上传临时保存目录
        'upload_tmp_dir'        => RUNTIME.'/upload',
        //是否开启静态文件，静态文件处理，交给nginx代理吧
        'enable_static_handler' => false,
        //默认静态文件目录，文件夹必须存在，一般使用nginx代理完成静态文件访问
        'document_root'         => ROOT.'/public',
        //开启post解析，默认是开启的
        'http_parse_post'       => true,
        //开启cookie解析，默认是开启的
        'http_parse_cookie'     => true,
        //开启文件上传解析，默认是开启的
        'http_parse_files'      => true,
        //启用压缩，默认是开启的
        'http_compression'      => true,
        //压缩级别，1~9，级别越高，消耗CPU越多，尺寸越小
        'http_compression_level'=> 1
    ],
    //websocket配置，ws继承http配置
    'ws'    => [
        //子协议
        //'websocket_subprotocol'         => 'inphp',
        'open_websocket_close_frame'    => false,
        'open_websocket_ping_frame'     => false,
        'open_websocket_pong_frame'     => false,
        'websocket_compression'         => false
    ],
    //是否开启热更新(建议仅在开发时开启)
    'hotUpdate'    => [
        //是否打开
        'enable'    => false,
        //热更新监听的文件夹
        'watchDirList'  => [
            //应用目录
            ROOT."/app",
            //各模块配置
            ROOT."/configs/public"
        ],
        //监听文件类型，写后缀，使用|分隔或文件后缀的数组也行["html","php", .... ]
        'watchFiles'    => "php|html|json",
        //热更新版本缓存文件
        'versionFile' => RUNTIME."/version.txt",
        //热更新间隔时间
        'seconds'   => 5
    ],
    //session 默认有效期
    "sessionLifeTime"   => 86400,
    //cookie 默认有效期
    "cookieLifeTime"    => 86400,
    //cookie 加密字符
    "cookieHashKey"     => "1i3m5",
    //禁止的HTTP请求方式，不区分大小写，建议除了 get,post,options 以外的请求，全部禁止
    "disableHttpRequestMethod" => ["DELETE", "PUT", "TRACE", "PATCH"]
];